Thème |
---|
Assembly3, un squelette cinématique |
Niveau |
Une connaissance de base d'Assembly3 et des outils Sketcher est utile. |
Temps d'exécution estimé |
40 minutes |
Auteurs |
FBXL5 |
Version de FreeCAD |
0.20 et ultérieure |
Fichiers exemples |
None |
Voir aussi |
Tutoriel Assemblage cinématique, Tutoriel Contrôleur cinématique |
Ce tutoriel explique comment mettre en place un mécanisme simple en 2D et attacher des objets en 3D, principalement à l'aide de les outils de l' atelier Assembly3 externe.
Ce tutoriel n'utilise pas le principe du schéma squelette (voir Assembly3 Create-Skeleton-Sketch sur GitHub).
Nous utiliserons plutôt des PartDesign Corps ne contenant qu'une seule
esquisse, pour construire un mécanisme en 2D, un squelette multi esquisse.
Les dimensions, ainsi que les couleurs, sont tirées du tutoriel SolveSpace auquel il est fait référence sur la page GitHub de Assembly3 (voir ci-dessus).
Ce squelette dit "multi esquisses" se compose de plusieurs Corps individuels et un conteneur
Assemblage. Pour pouvoir attacher d'autres objets, chaque corps est placé dans un conteneur d'assemblage distinct.
Les corps, et leurs esquisses, qui sont utilisés dans ce montage :
Les huit esquisses sont colorées individuellement et positionnées manuellement en déplaçant leurs corps parents
La forme peut s'écarter de celle de la pièce réelle, mais la position de l'articulation définissant la géométrie doit être précise.
Pour fixer ou contrôler la position de tous les corps, il faut un objet Assembly. Il ajoute une branche Assembly à la Vue en arborescence.
Répétez l'action ci-dessus pour créer un objet Assembly pour chaque corps et faites glisser le corps dans son conteneur Parts. Fixez ensuite le corps à son assemblage :
L'assemblage de la manivelle, par exemple, doit ressembler à ceci :
La branche du sous-assemblage de la manivelle dans l'arborescence et la manivelle avec son élément verrouillé dans la vue 3D
Dans la vue en arborescence, faites glisser toutes les branches du sous-assemblage dans le conteneur Parts de l'objet Assembly parent.
Branche Assembly dans la vue en arborescence
Ils sont maintenant prêts à être arrangés.
Tout d'abord, nous avons besoin d'une partie fixe. Pour fixer complètement la base, nous sélectionnons habituellement une face, mais dans ce cas, un cercle fera aussi bien l'affaire.
Cercle sélectionné → Base fixée avec l'objet Element créé et le système de coordonnées de l'élément (ECS) affiché (vert)
Pour les articulations de type charnière, nous sélectionnons un cercle de chaque esquisse et utilisons la contrainte Plane Coincidence. Non seulement elle rend les plans XY des deux éléments coplanaires, mais elle rend également leurs axes Z colinéaires.
Cercles sur la base et la manivelle sélectionnés → Manivelle relocalisée avec les objets Élément et ECS créés affichés (vert)
Cercles sur la plaque de base et la plaque supérieure sélectionnés → Plaque supérieure relocalisée
Les liaisons déjà créées peuvent être identifiées par leurs représentations de contraintes (rouge).
Cercles sur la manivelle et la tige 1 sélectionnés → Tige 1 déplacée et manivelle inclinée
La dernière liaison de cette chaîne cinématique relie deux éléments dont les directions Z sont déjà définies et une contrainte Point on line est tout ce dont nous avons besoin.
Cercles sur la plaque supérieure et la tige 1 sélectionnés → Tige 1 déplacée, manivelle et plaque supérieure inclinées
Si les axes Z de trois éléments ou articulations sont parallèles et se trouvent sur le même plan virtuel, le solveur peut échouer à les réarranger dans une étape suivante parce qu'il est incapable de décider dans quelle direction l'articulation centrale doit être tournée. Cela peut se produire pour l'élément tige 1, l'articulation manivelle - tige 1 et l'articulation base - manivelle que nous avons ici. Dans ce cas, nous devons aider le solveur et faire tourner un objet (par exemple la manivelle) manuellement en utilisant l'outil Axial move.
Une autre (sous-)chaîne cinématique commence avec des contraintes Plane Coincidence.
Cercles sur la plaque supérieure (ou la base) et tige 2 sélectionnés → Tige 2 relocalisée
Cercles sur la tige 2 et plaque inférieure sélectionné → Plaque inférieure déplacée et tige 2 inclinée
Cercles sur la plaque supérieure et tige 3 sélectionnés → Déplacement de la tige 3 et réorganisation de la sous-chaîne cinématique supérieure
Et cette (sous-)chaîne cinématique se termine par une contrainte Point on line aussi.
Cercles sur la plaque inférieure et tige 3 sélectionnés → Relocalisation de la tige 3 et réarrangement des sous-chaînes ukinématiques
Pour relier les deux sous-chaînes cinématiques, nous utilisons la tige 4 avec une contrainte Plane Coincidence à une extrémité et une contrainte
Point on line à l'autre extrémité.
Cercles sur la manivelle et la tige 4 sélectionnés → Tige 4 relocalisée
Cercles sur la plaque inférieure et tige 4 sélectionnés → Tige 4 déplacée et disposition finale de l'assemblage cinématique
Puisque Assembly3 ne fournit aucun moyen de contrôler les assemblages cinématiques, nous avons besoin d'une aide externe telle que ce contrôleur cinématique. Pour utiliser ce contrôleur, nous devons marquer l'étiquette d'une contrainte avec le suffixe "Driver"
pour en faire une contrainte de mouvement. Il peut être séparé par un "."
ou "-"
pour plus de clarté, car le contrôleur ne vérifiera que si le label se termine par "Driver"
.
Nous changeons donc le label de la liaison Base-Manivelle en Base-Crank.Driver
.
L'assemblage cinématique terminé avec la représentation désactivée des éléments et des contraintes doit ressembler à ceci :
Assemblage terminé dans la Vue en arborescence et la Vue 3D
Animation GIF réalisée à partir d'une séquence d'images de ce contrôleur cinématique
Mes attentes concernant l'attachement d'un nouvel objet à un objet de base appartenant à un assemblage cinématique étaient quelque chose comme :
Mais cela aurait été trop facile.
L'outil Assembly3 ConstraintAttachment, comme tout outil de contrainte d'Assembly3, repose sur l'utilisation d'objets Element et de leurs systèmes de coordonnées d'éléments (ECSs) pour les tâches de positionnement.
Ainsi, attacher des objets n'est qu'une autre façon d'ajouter des objets à un (sous-)ensemble.
Attachons la tige 4-3D à la tige 4 par exemple :
Les objets ont une orientation différente et l'objet 3D doit avoir un décalage par rapport à l'objet 2D.
Tige 4 (verrouillée) et Tige 4-3D → Arcs sélectionnés → Tige 4-3D relocalisée (les deux ECSs sont au même endroit avec une orientation identique)
Il est maintenant évident que l'outil Assembly3 ConstraintAttachment ignore le décalage et l'orientation entre les deux objets.
Cependant, la position est déjà définie comme nous le voulions et il nous suffit donc d'adapter l'angle manuellement et de définir le décalage souhaité :
Si nous définissons les propriétés du deuxième élément, le mouvement de l'angle et du décalage ira dans la direction opposée.
Comme attaché → Angle adapté → Décalage défini
S'il y a un objet 3D attaché à chaque objet 2D, cela pourrait ressembler à ceci :
La section Attachement de la géométrie 3D ne fait qu'effleurer l'extension d'un sous-ensemble, et d'autres contraintes ou combinaisons de contraintes peuvent être plus appropriées que la contrainte d'attachement.
Il est important de déplacer un tel assemblage cinématique par petits pas, sinon le solveur abandonnera et échouera. Il est presque impossible d'utiliser Move part ou
Axial move pour cette tâche.
La contrainte Assembly3_ConstraintCoincidence est utilisée pour piloter l'assemblage cinématique, sa propriété DonnéesAngle (activée par la propriété DonnéesLock Angle) accepte des nombres positifs ou négatifs en virgule flottante supérieurs à 360 et peut donc faire plusieurs tours complets.